#pragma once

#include "CFrameworkTemplate.h"

class CType;

class CControlTemplate :
	public CFrameworkTemplate
{

protected: 
	CControlTemplate(CCoreServices *);
public: 
	static HRESULT Create(CDependencyObject * * ppObject, CREATEPARAMETERS * pCreate);
	virtual HRESULT LoadContent(CDependencyObject * * ppResult, CDependencyObject * pTemplatedParent);
	virtual ~CControlTemplate();
	virtual XUINT32 GetTypeIndex() const;
	virtual HRESULT GetValue(CDependencyProperty * pdp, CValue * pValue);
	CType * m_pTargetType;

};